package cn.linran.exception;

import cn.linran.enums.GlobalErrorCode;

/**
 *自定义异常
 */
public class GlobalCustomException extends RuntimeException{

    // 异常信息
    private String errorMessage;

    // 异常码
    private String errorCode;

    public GlobalCustomException(String errorMessage){
        super(errorMessage);
    }

    /**
     * 自定义异常无参构造
     */
    public GlobalCustomException(){
        super();
    }

    /**
     * 自定义有参构造
     * @param errorCode
     * @param errorMessage
     */
    public GlobalCustomException(String errorCode, String errorMessage){
        super(errorMessage);
        this.errorCode = errorCode;
        this.errorMessage = errorMessage;
    }

    /**
     * 自定义异常有参构造
     * @param globalErrorCode
     */
    public GlobalCustomException(GlobalErrorCode globalErrorCode){
        super(globalErrorCode.getMessage());
        this.errorCode = globalErrorCode.getCode();
        this.errorMessage = globalErrorCode.getMessage();
    }

    public String getErrorMessage() {
        return errorMessage;
    }

    public void setErrorMessage(String errorMessage) {
        this.errorMessage = errorMessage;
    }

    public String getErrorCode() {
        return errorCode;
    }

    public void setErrorCode(String errorCode) {
        this.errorCode = errorCode;
    }
}